package com.xquant.marketdata.curvestrip.mapper;

import com.xquant.marketdata.curvestrip.entity.CheckParam;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.List;
import java.util.Map;

/**
 * @Author: xpp -_- -_-
 * @Date: 2021/3/16 16:27
 */
@Repository
public interface TdefCurveMapper {
    List<Map> TdefCurveListByPage(Map<String, Object> params);
    void deleteByPrimarydefcCode(Map<String, Object> params);
    void saveTdefCurve(Map<String, Object> params);
    void updateTdefCurveByDeCode(Map<String, Object> params);

    List<Map> TdefcurveRefSetByPage(Map<String, Object> params);
    void deleteTdefcurveRefSet(Map<String, Object> params);
    void saveTdefcurveRefSet(Map<String, Object> params);
    void updateTdefcurveRefSet(Map<String, Object> params);

    List<Map> TdefcurveRatesByPage(Map<String, Object> params);
    void deleteTdefcurveRates(Map<String, Object> params);
    void saveTdefcurveRates(Map<String, Object> params);
    void updateTdefcurveRates(Map<String, Object> params);

    int saveTdefcurveRefSetBatch(Map<String, Object> params);

    List<Map<String, Object>> findDefcurveByCode(@Param("defcCode") String code);

    int saveRefSetCds(Map<String,Object> params);

    int deleteRefSetCdsQuote(Map<String, Object> params);

    int deleteRefSetCds(Map<String, Object> params);

    int deleteRefSetCdsByICodes(@Param("iCodes") List<String> iCodes);

    List<Map<String,Object>> selectDefcurveRates(Map<String, Object> params);

    int checkDefCurveRates(CheckParam checkParam);
}
